function dataManage(viewer, Cesium) {
    this.viewer = viewer;
    this.Cesium = Cesium;
}

/**
 * 加载所有基础数据
 */
dataManage.prototype.loadDataAll = function () {

    const cesiumKey = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiJmMDVkZTNkOC05ODE1LTQzOTQtODc4OS0yZmUzMzEyMjIwNmUiLCJpZCI6ODExMiwiaWF0IjoxNTk5Mjg2MDU3fQ.PFyNEF276v42QNmUONr5h8dbAhxBnHt9DnaCc81Cqdw";
    const bingKey = "ho0hKuFlmiFWQHzfa5FC~SP3NW-1t7-SfIS_JmPjLMQ~AvApw-rZO-uMVo2igmXNODXvnF0uNrGOuP7imYvdIy54CXdUH306YFhcEi0WfYup";
    const tiandituKey = "ea11e31aec9fe5e75dc61609694e0a8c";

    var imageryLayers = this.viewer.imageryLayers;
    imageryLayers.removeAll() //移除默认所有图层

    //火星地形服务
    var terrainProvider_huoxin = new this.Cesium.createWorldTerrain({
        url: 'http://data.marsgis.cn/terrain'
    });

    //this.viewer.terrainProvider = terrainProvider_huoxin;

    //谷歌影像http://mt1.google.cn/vt/lyrs=s&hl=zh-CN&x=0&y=0&z=0&s=Gali
    var imageryProvider_google = new this.Cesium.UrlTemplateImageryProvider({
        url: "http://mt1.google.cn/vt/lyrs=s&hl=zh-CN&x={x}&y={y}&z={z}&s=Gali"
    });

    //天地图影像
    var imageryProvider_tianditu = new this.Cesium.UrlTemplateImageryProvider({
        url: "http://t0.tianditu.gov.cn/DataServer?T=img_c&x={x}&y={y}&l={z}&tk=" + tiandituKey
    });

    //超图影像
    var imageryProvider_chaotu = new this.Cesium.WebMapTileServiceImageryProvider({
        url: "  http://support.supermap.com.cn:8090/iserver/services/data-world/wcs111?service=WCS&version=1.1.1&request=GetCoverage&height=256&width=256&Format=image/png&Identifier=0&BoundingBox=-90,0,90,180,urn:ogc:def:crs:EPSG::4326",
    });

    //arcGIS影像
    var imageryProvider_esri = new this.Cesium.ArcGisMapServerImageryProvider({
        url: 'https://services.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer',
        enablePickFeatures: false
    });
    //加载OSM数据——createOpenStreetMapImageryProvider
    var imageryProvider_openstreet = new this.Cesium.OpenStreetMapImageryProvider({
        url: 'https://a.tile.openstreetmap.org/'
    });

    //MapBox数据
    var imageryProvider_mapbox = new this.Cesium.MapboxImageryProvider({
        mapId: 'mapbox.satellite'
    });

    var imageryProvider_bing = new this.Cesium.BingMapsImageryProvider({
        url: 'https://dev.virtualearth.net',
        key: bingKey,
        mapStyle: this.Cesium.BingMapsStyle.AERIAL
    });

    //imageryLayers.addImageryProvider(imageryProvider_google);
    //imageryLayers.addImageryProvider(imageryProvider_tianditu);
    imageryLayers.addImageryProvider(imageryProvider_google);

    var entities = [];
    for (var i = 0; i < DATA_LIST.length; i++) {
        var item = DATA_LIST[i];
        if (item.dataType == "model" && item.isLoad) {
            var model = this.loadModel(item);
            entities.push(model);
            DATA_LIST_Manage[item.name]=model;
        }
    }
    this.viewer.zoomTo(entities);
}

dataManage.prototype.loadModel = function (item) {
    // 设置模型方向
    var entity_fangwu = this.viewer.entities.add({
        position: this.Cesium.Cartesian3.fromDegrees(item.position[0], item.position[1], item.position[2]),
        name: item.name,
        dataType: item.dataType,
        model: {
            uri: VUE_APP_BASE_API + "/" + item.url,
            heightReference: this.Cesium.HeightReference.CLAMP_TO_GROUND,
            color: this.Cesium.Color.GAINSBORO,
            colorBlendAmount: 0.4,
            scale: 1.0
        }
    });

    return entity_fangwu;
}


// 1、天地图影像
//
// http://t0.tianditu.gov.cn/DataServer?T=img_c&x={x}&y={y}&l={z}&tk=
//
//     2、天地图影像(中文标注)
//
// http://t0.tianditu.gov.cn/DataServer?T=cia_c&x={x}&y={y}&l={z}&tk=
//
//     3、天地图影像(英文标注)
//
// http://t0.tianditu.gov.cn/DataServer?T=eia_c&x={x}&y={y}&l={z}&tk=
//
//     4、天地图矢量
//
// http://t0.tianditu.gov.cn/DataServer?T=vec_c&x={x}&y={y}&l={z}&tk=
//
//     5、天地图矢量(中文标注)
//
// http://t0.tianditu.gov.cn/DataServer?T=cva_c&x={x}&y={y}&l={z}&tk=
//
//     6、天地图矢量(英文标注)
//
// http://t0.tianditu.gov.cn/DataServer?T=eva_c&x={x}&y={y}&l={z}&tk=
//
//     7、天地图地形
//
// http://t0.tianditu.gov.cn/DataServer?T=ter_c&x={x}&y={y}&l={z}&tk=
//
//     8、天地图地形(中文标注)
//
// http://t0.tianditu.gov.cn/DataServer?T=cta_c&x={x}&y={y}&l={z}&tk=
//
//     9、天地图影像(满文标注)
//
// http://t0.tianditu.gov.cn/DataServer?T=mva_c&x={x}&y={y}&l={z}&tk=
//
//     10、全球境界
//
// http://t0.tianditu.gov.cn/DataServer?T=ibo_c&x={x}&y={y}&l={z}&tk=
//
//     示例：
//
// http://t0.tianditu.com/DataServer?T=img_c&x=1693&y=336&l=11&tk=44964a97c8c44e4d04efdf3cba594467


//
// 1、谷歌矢量(中文标注)
//
// http://mt{0-3}.google.cn/vt/v=m@416115521&hl=zh-CN&gl=cn&x={x}&y={y}&z={z}&s=Galileo
//
//     2、谷歌矢量(英文标注)
//
// http://mt{0-3}.google.cn/vt/v=m@416115521&hl=en&gl=cn&x={x}&y={y}&z={z}&s=Galileo
//
//     3、谷歌矢量(大字标注)
//
// http://mt{0-3}.google.cn/vt/imgtp=png32&v=m@416115521&hl=zh-CN&gl=cn&x={x}&y={y}&z={z}&s=Galileo&scale=2
//
//     4、谷歌影像
//
// http://mt{0-3}.google.cn/maps/vt?lyrs=s&hl=zh-CN&gl=CN&x={x}&y={y}&z={z}
//
//     5、谷歌影像(中文标注)
//
// http://mt{0-3}.google.cn/maps/vt?lyrs=y&hl=zh-CN&gl=CN&x={x}&y={y}&z={z}
//
//     6、谷歌影像(英文标注)
//
// http://mt{0-3}.google.cn/maps/vt?lyrs=y&hl=zh-en&gl=CN&x={x}&y={y}&z={z}
//
//     7、谷歌地形(中文标注)
//
// http://mt{0-3}.google.cn/maps/vt?lyrs=p&hl=zh-CN&gl=CN&x={x}&y={y}&z={z}
//
//     8、谷歌地形(英文标注)
//
// http://mt{0-3}.google.cn/maps/vt?lyrs=p&hl=zh-en&gl=CN&x={x}&y={y}&z={z}
//
//     9、谷歌路网
//
// http://mt{0-3}.google.cn/vt/lyrs=h@167000000&hl=zh-CN&gl=cn&x={x}&y={y}&z={z}&s=Galil
//
//     10、谷歌影像(大字标注)
//
// http://mt{0-3}.google.cn/vt/imgtp=png32&v=h@416115521&hl=zh-CN&gl=cn&x={x}&y={y}&z={z}&s=Galile&scale=2
//
//
//
//     mt{0-3}代表mt0、mt1、mt2、mt3的切片服务
//
// lyrs表示的是图层类型，即瓦片类型(m：路线图；t：地形图；p：带标签的地形图；s：卫星图；y：带标签的卫星图；h：标签层（路名、地名等）)
//
//
//
// 实例地址（把上述x、y、z替换成行列号即可）
//
// http://mt2.google.cn/vt/lyrs=y&scale=2&hl=zh-CN&gl=cn&x=6891&y=3040&z=13


/*
超图
iServer请求URL:

    http://support.supermap.com.cn:8090/iserver/services/data-world/wcs111?service=WCS&version=1.1.1&request=GetCoverage&height=256&width=256&Format=image/png&Identifier=0&BoundingBox=-90,0,90,180,urn:ogc:def:crs:EPSG::4326

        ArcGIS请求URL

https://sampleserver6.arcgisonline.com/arcgis/services/ScientificData/MODIS_Landcover/ImageServer/WCSServer?request=GetCoverage&service=WCS&version=1.0.0&coverage=1&format=GeoTIFF&crs=EPSG:3857&bbox=-13361600.208397774,4843630.020981936,3261.313205169514,7387454.322311925&width=1366&height=260&time=2012-01-01T00:00:00.000Z&interpolation=nearest%20neighbor&band=1
*/